A number of video encoding and decoding techniques have been developed for encoding and decoding digital video data. The Moving Picture Experts Group (MPEG), for example, has developed several techniques including MPEG-1, MPEG-2 and MPEG-4. Other examples include the International Telecommunication Union (ITU)-T H.263 standard, and the ITU-T H.264 standard and its counterpart, ISO/IEC MPEG-4, Part 10, i.e., Advanced Video Coding (AVC). These video standards support efficient transmission and storage of video data by encoding data in a compressed manner to reduce the amount of data.
Video compression may involve spatial and/or temporal prediction to reduce redundancy inherent in video sequences. Intra-coding uses spatial prediction to reduce spatial redundancy of video blocks within the same video frame. Inter-coding uses temporal prediction to reduce temporal redundancy between video blocks in successive video frames. For inter-coding, a video encoder performs motion estimation to generate motion vectors indicating displacement of video blocks relative to corresponding prediction video blocks in one or more reference frames.
A source device may employ one of the above video encoding techniques to encode the digital video data. The source device archives the encoded video data and/or transmits the encoded video data to a destination device via a transmission channel. The transmission channel may make use of wired and/or wireless communication media. The destination device receives the encoded video data and decodes the received video data to recover the original digital video data for playback. Many devices include both an encoder and a decoder, which may be combined in so-called codec.